System, method and program product to determine resolution when software installed on a computer is not property licensed

ABSTRACT

Computer system, computer implemented method and computer program product for determining a recommended course of action to resolve an unlicensed software installation of a type of software in a computer of a company. A determination is made as to an amount or level of use of the type of software by the company during a predetermined period of time. A determination is made if the type of software is currently installed on another computer of the company. A determination is made if the software of the unlicensed software installation can be relocated to the other computer of the company and encompassed under another existing license for the other computer. Alternately, automatic evaluations are made of characteristics of the company&#39;s use of (a) the type of software which would permit removal of the type of software from all computers of the company, (b) the software installation which would permit removal of the software installation, and (c) the type of software which would permit relocation of the software from the unlicensed software installation to another computer of the company at which the software would be licensed.

FIELD OF THE INVENTION

The present invention relates generally to computer systems, and morespecifically to a program tool to determine what to do when a softwareinstallation on a computer is not covered under an existing softwarelicense.

BACKGROUND OF THE INVENTION

Typically, software is licensed not sold. The license includesconditions and restrictions such as (a) a geographic location where (anunlimited number of copies of) the software can be installed, (b) aspecific computer CPU serial number in which (an unlimited number ofcopies of) the software can be installed, (c) a total number of copieswhich the licensee can install in one or more computers locatedanywhere, (d) a type of computer (such as production, development, etc.)on which the software can be used, and (e) a maximum size computer(typically expressed in processing power) in which the software can beinstalled. Often times, one company has multiple licenses that authorizeinstallation of the same type of software, and many copies of thesoftware are installed on different computers of the company. It hasproven difficult for many companies to effectively track their licensesand which software copies are licensed when the company is large and hasmany separate software licenses, software installations and computers.Often times, the result is that one or more software installations arenot covered by an existing software license of the company. Usually thisis inadvertent, but nevertheless improper. (Often times also, thecompany has excess software licenses.)

An IBM Tivoli License Manager program is a known software licensemanagement program, and is further described in a document entitled“Introducing IBM Tivoli License Manager” by Manoel, et al. which isavailable from ibm.com/redbooks. Chapter 2 of this document is herebyincorporated by reference as part of the present disclosure. Using thisprogram, when a license is associated with specific installed software,an administrator enters into a database information about the license.To the extent applicable, this information includes maximum size of thecomputer processor on which the program can be installed, maximum numberof copies of the program that can be installed (on any computer),expiration date, specific CPU serial number on which the program can beinstalled or executed, and geographic location of the processor forexecuting (an unlimited number of copies of) the program. The TivoliLicense Manager program checks whether each installed software programcomplies with an existing license by applying the licenses to theinstallations based on a predetermined and set order of conditions. Forexample, the Tivoli License Manager may be preprogrammed to apply alllicenses having one type of condition to the installations, and thendetermine which installations are not covered by this type of license.Then, the Tivoli License Manager may be preprogrammed to apply alllicenses having another type of condition to the remaininginstallations, and then determine which installations are not covered byeither type of license. Then, the Tivoli License Manager may bepreprogrammed to apply all licenses having still another type ofcondition to the still remaining installations, and then determine whichinstallations are not covered by any of the three license, etc. If theTivoli License Manager has not associated any remaining installedsoftware with a license after all the licenses have been applied, thenit is possible that such remaining installed software is not coveredunder any existing software license. (If any licenses remain after allthe software installations are associated with/covered by any of thepreviously applied licenses, then the Tivoli License Manager deems theremaining licenses as excessive or unnecessary, and they can beterminated to save the company money.)

Copending US Patent Application entitled “System, Method and ProgramProduct To Identify Unutilized or Underutilized Software License”,Serial ______ filed by J. Marsnik, O. Nalamwar and T. Smalley on ______(IBM Docket END9-2005-0014) discloses an improved program tool foridentifying installed software which is not licensed as well as excessor under utilized licenses. According to this patent application, theimproved program tool applies the software licenses in various orders tothe software installations, where each order is based on a differentprioritization of license conditions. For example, in one order, alllicenses with a condition on geographic location are applied first, thenall licenses with a condition on total number of copies are appliedsecond, then all licenses with a condition on specific CPU are appliedthird, etc. In another order, all licenses with a condition on totalnumber of copies are applied first, then all licenses with a conditionon geographic location are applied second, then all licenses with acondition on specific CPU are applied third, etc. In still anotherorder, all licenses with a condition on specific CPU are applied first,then all licenses with a condition on total number of copies are appliedsecond, then all licenses with a condition on geographic location areapplied third, etc. This patent application is hereby incorporated byreference as part of the present disclosure. After all the licenses areapplied in the different orders to the software installations, if noneof the licenses covers one or more software installations in any of theorders, then that software installation is not licensed. (Also, if lessthan all the licenses are needed to cover all the software installationsin any of the orders, then the remaining licenses are unnecessary andcan be terminated to save the company money.)

While the foregoing techniques are effective in identifying unlicensedsoftware installations, they do not disclose a technique to determinewhat to do when such unlicensed software installations are identified,other than to simply decommission/delete the unlicensed softwareinstallation. This may not be in the best interest of the user/company.

Accordingly, an object of the present invention is to determine what todo when unlicensed software installations are identified, to serve theinterest of the user/company.

SUMMARY

The present invention resides in a computer system, computer implementedmethod and computer program product for determining a recommended courseof action to resolve an unlicensed software installation of a type ofsoftware in a computer of a company. A determination is made as to anamount or level of use of the type of software by the company during apredetermined period of time. A determination is made if the type ofsoftware is currently installed on another computer of the company. Adetermination is made if the software of the unlicensed softwareinstallation can be relocated to the other computer of the company andencompassed under another existing license for the other computer.

In accordance with features of the present invention, recommendationsare automatically made based on the foregoing determinations.

The present invention also resides in a computer system, computerimplemented method and computer program product for determining arecommended course of action to resolve an unlicensed softwareinstallation of a type of software in a computer of a company.Characteristics of the company's use of the type of software which wouldpermit removal of the type of software from all computers of the companyare automatically evaluated. Characteristics of the company's use of thesoftware installation which would permit removal of the softwareinstallation are automatically evaluated. Characteristics of thecompany's use of the type of software which would permit relocation ofthe software from the unlicensed software installation to anothercomputer of the company at which the software would be licensed areautomatically evaluated.

BRIEF DESCRIPTION OF THE FIGURES

FIG. 1 is a block diagram of a computer system in which the presentinvention is incorporated.

FIG. 2 is a flow chart of a software license resolution program withinthe computer system of FIG. 1 according to the present invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

The present invention will now be described in detail with reference tothe figures. The present invention is implemented with a programmedcomputer such as computer 10 illustrated in FIG. 1. Computer 10 includesa known CPU 12, operating system 13, RAM 14, ROM 16, disk storage 18,and TCP/IP card 20. Computer 10 also includes a software license reviewprogram 22 which compares license conditions and scope of a plurality ofsoftware licenses for the same type of software to the actual softwareinstallations to determine if all of the software installations arelicensed (or “compliant”). (Program 22 also determines if any of thesoftware licenses are not needed at all and therefore can be terminated,i.e. other software license(s) cover/license all the softwareinstallations. Program 22 also determines if an individual softwarelicense can be reduced in scope, i.e. reduced in the number of copieslicensed. Either case will reduce the total license fees for thelicensee.) Program 22 can be the known IBM Tivoli License Managerprogram described above (for certain types of single-condition softwarelicenses) or the software license optimizing program disclosed in USPatent Application entitled “System, Method and Program Product ToIdentify Unutilized or Underutilized Software License”, Serial ______,filed by J. Marsnik, O. Nalamwar and T. Smalley on ______ (IBM DocketEND9-2005-0014), described above (for a wider range of software licensesincluding those with multiple conditions). As explained above, the IBMTivoli License Manager program applies the software licenses to thesoftware installations in an order based on the type of condition ineach license, and a predetermined order of such conditions. After allthe licenses are applied to the software installations, if none of thesoftware licenses covers/license one or more of the softwareinstallations, then such one or more software licenses are not licensed.The software license optimizing program of US Patent Applicationentitled “System, Method and Program Product To Identify Unutilized orUnderutilized Software License”, Serial ______. filed by J. Marsnik, O.Nalamwar and T. Smalley on ______ (IBM Docket END9-2005-0014) appliesthe software licenses to the software installations based on the type ofcondition in each license, and different orders of such conditions indifferent iterations of the program. After all the licenses are appliedin the different orders to the software installations, if none of thelicenses covers/licenses one or more software installations in any ofthe orders, then such one or more software installation are notlicensed.

Computer 10 also includes a software license resolution program 24according to the present invention. Program 24 determines what to dowhen a software installation in one of the company's computers is notcovered/licensed by an existing software license. As explained in moredetail below, program 24 has expert system rules to determine when to(a) decommission/delete this software from all computers of the company,(b) decommission/delete an installation of the software on any computerof the company so that an existing license has sufficient scope (or“room”) to license the remaining software installation(s), (c) move thecurrently unlicensed software to another computer where it will beproperly licensed under an existing license (such as a geographiclocation license or CPU license), (d) renegotiate an existing license toextend/expand the scope of the existing license to cover the currentlyunlicensed software installation, or (e) purchase a new license to coverthe currently unlicensed software installation.

FIG. 2 illustrates the functional steps and operation of program 22 andprogram 24 in more detail. In step 122, program 22 conducts an inventoryof each type of software which is currently installed in computers of acompany, for example, the user's company or the user's customer. Theinventory identifies each computer (and its serial number) on which thetype of software is installed, the geographic location of the computer,and the number of installed copies of the type of software. If there areother conditions or restrictions on usage specified in the associatedsoftware licenses (such as listed below), the inventory can identifyother, corresponding characteristics of the usage. Program 22 conductsthis inventory by querying configuration files and other files for thecomputers containing this information. Program 22 records the results ofthe software usage inventory in a table or file 101 (shown in FIG. 1).Before, after or concurrent with software installation inventory, theuser conducts an inventory of the software licenses for this type ofsoftware used by the one company. The inventory identifies the type(s)of usage condition(s) or restriction(s) in each software license. Afterconducting the inventory, the user populates a table or file 103 (shownin FIG. 1) with fields and predetermined key words for the differenttypes of conditions or restrictions. By way of example, a condition orrestriction may state the following:

(a) The type of software can only be used on a specified computer(typically specified by the computer CPU serial number), with norestriction on the number of copies that can be installed on thespecified computer or the geographic location of the specified computer.In file 103, this type of license is referenced by the key word, “CPUSerial #”.

(b) The type of software can only be used at a specified geographiclocation of the computer CPU, with no restriction on the number ofcomputers at that geographic location on which the type of software canbe installed or the number of copies of the software that can beinstalled at that geographic location. In file 103, this type of licenseis referenced by the key word, “Location City XYZ”.

(c) The total number of copies of the type of software that can be used,with no restriction on the number of computer CPUs on which the softwarecan be installed or the geographic location of the computer CPUs onwhich the software can be installed. In file 103, this type of licenseis referenced by the key word, “Number of Copies #”.

(d) The maximum processing power of a computer CPU on which the type ofsoftware can be used, with no restriction on the number of copies thatcan be installed on the computer or the geographic location of thecomputer.

(e) The business unit which uses software.

(f) The number of Logical Partitions (“LPARS”) in which the software canbe used.

(g) The number of actual users of the software program.

(h) The number of computers or server “nodes” on which the software canbe installed.

(i) A type of computer (such as production, development, etc.) on whichthe software can be installed.

After performing the inventory of the software licenses, program 22records the results of the software usage inventory in file 103.

In one example, there are five software licenses applicable to the sametype of software for the one company. In this example, each of thesoftware licenses has only one of the following restrictions: (i)computer CPU serial number in which the software can be installed(unlimited number of copies on the computer, unrestricted geographiclocation of the computer CPU), (ii) geographic location of the computerCPU in which the software can be installed (unlimited number ofcomputers at the geographic location in which the software can beinstalled, unlimited number of copies that can be installed on thecomputer(s) at the geographic location), or (iii) total number of copiesof the software that can be installed (unlimited number of computer CPUsup to the total number of copies, unrestricted geographic location ofthe computer CPUS). In this example, license #1 has only the conditionof computer CPU serial number, license #2 has only the condition ofgeographic location of the computer CPU, license #3 has only thecondition of total number of copies of the software, license #4 has onlythe condition of geographic location of the computer CPU, and license #5has only the condition of the computer CPU serial number. It should benoted that the foregoing example is just one possible example. Program22 can evaluate other types of software licenses with other types ofindividual conditions or combinations of conditions (in a singlelicense).

As described below, in one embodiment of program 22 (as described inCopending US Patent Application entitled “System, Method and ProgramProduct To Identify Unutilized or Underutilized Software License”,Serial ______. filed by J. Marsnik, O. Nalamwar and T. Smalley on ______(IBM Docket END9-2005-0014)), program 22 compares the software licensesto the software inventory in different orders of the software licenseconditions; one or more of the orders will reveal the most excesses, ifany, in the software licenses. If there are such excesses, thisrepresents an opportunity to terminate or reduce the scope of the excesssoftware license(s), and thereby, reduce the license fees. Conversely,if none of the existing software licenses covers one or more of thesoftware installations during any order of applying the softwarelicenses, then such one or more software installations are unlicensed(or noncompliant with existing licenses), and program 22 invokes program24 to determine how to resolve this problem. In some cases, there is nolicense whatsoever for the subject software installation. In othercases, there is a software license intended for the softwareinstallation, but the software installation does not comply with one ormore conditions of the intended license. For example, the intendedsoftware license may be limited to a CPU of a certain maximum processingpower, and the actual software installation may be on a computer withgreater processing power. In either case (either no license or aninadequate license), the software installation is considered unlicensed.

Thus, after program 22 identifies one or more software installations asbeing unlicensed in step 100 and invokes program 24, program 24determines a course of action to satisfy the licensee's needs withoutviolating the copyright laws or breaching an existing software license.In other words, program 24 will determine a course of action that willresult in all (remaining) software installations of the company beingproperly licensed. As explained in more detail below, program 24 willdetermine the viability and desirability of the following remedies,preferably in the following order: (a) decommission/delete the softwarefrom all computers of the company, (b) decommission/delete aninstallation of this software on another computer of the company so thatan existing license has sufficient scope (or “room”) to license thecurrently unlicensed software installation, (c) move the currentlyunlicensed software to another computer where it will be properlylicensed under an existing license of the company, (d) renegotiate andexpand an existing license of the company to extend the existing licenseto the currently unlicensed software installation, or (e) purchase a newlicense to cover the currently unlicensed software installation.

Accordingly, in step 204, program 24 determines if the currentlyunlicensed software installation should be decommissioned/deleted fromall computers of the company, based on the following expert system rulesin a rules data base 201:

(a) An administrator previously classified the software installation as“non critical”, and previously recorded this classification in a table203, and any one of the following situations applies:

(i) the software has not been used for a past, predetermined timeperiod, such as thirteen months, on any computer of the company. (Eachtime the software has been used, the operating system 13 records thedate of such use in table 203;) or

(ii) the software has been used “lightly” for a past, predetermined timeperiod, such as thirteen months, on all computers of the company and anadministrator previously recorded in table 203 that comparable softwareis currently installed on a computer of the company. (Program 24determines “light” usage by comparing the number of uses recorded intable 203 to a threshold previously recorded by the administrator intable 203); or

(iii) the software has been used lightly for a past, predetermined timeperiod, such as thirteen months, on all computers of the company and theusage has been decreasing faster than a predetermined rate (as indicatedby the records in table 203); or

(iv) an administrator previously made a record in table 203 that thecustomer intends to discontinue use of this software; or

(v) the currently unlicensed software installation has not been accessedfor a past, predetermined time period, such as thirteen months; or

(vi) the software is responsible for a predetermined percentage or moreof the licensee's important failures (“business capabilities failures”)in the last year (based on records previously entered by a supportperson in table 203), and is functionally redundant to another installedsoftware product (based on records previously entered by anadministrator in table 203).

If the company's situation permits the resolution considered in step204, then program 24 notifies the administrator of this recommendedresolution (decision 206, yes branch), and that the cost is low, i.e.the labor cost of decommissioning the software from all computers of thecompany (step 230). There is no additional license fee. In addition, ifone or more software licenses can be terminated due to thedecommissioning of the software based on the recommendation of step 204,and there is an ongoing cost associated with the one or more softwarelicenses as recorded in file 103, program will notify the administratorof the potential cost savings.

If the software installation cannot be decomissioned/deleted from allthe computers of the company based on the rules of step 204 (decision206, no branch), program 24 determines if the software type of thecurrently unlicensed software installation can be decommissioned/deletedfrom another computer of the company to “make room” for the currentlyunlicensed software installation under an existing license (step 208),based on the following rules:

(b) the software is installed on another computer of the company, thesoftware was substantially underutilized there (based on the recordspreviously entered by operating system 13 in table 203 as to usage ofthe software and a usage threshold previously entered by theadministrator in table 203 representing substantial under utilization),and an existing license would cover the currently unlicensedinstallation if the software was decommissioned/deleted from this othercomputer. For example, there may be an existing license that is limitedto total number of installed copies or total number of sites where thesoftware is installed, and the license is currently at its limit, anddecommissioning of the software at the other computer would make roomfor currently unlicensed software installation. In such a case, thecurrently unlicensed software installation can be decommissioned/deletedon this other computer, and the company can rely on the existing licenseto license the currently unlicensed software installation.

If the company's situation permits the resolution considered in step208, then program 24 notifies the administrator of this recommendedresolution (decision 210, yes branch), and that the cost is low, i.e.the labor cost of decommissioning the unlicensed software installationat the other computer (step 230). There is no additional license fee.

If the unlicensed software installation cannot be decomissioned/deletedbased on the rules of step 208 (decision 210, no branch), program 24determines if the software of the currently unlicensed installation canbe relocated to another computer of the company, i.e. installed onanother computer of the company under an existing, underutilized licenseand the currently unlicensed software installationdecommissioned/deleted (step 212), based on the following rules:

(c) an existing license of the company permits installation of thesoftware on another computer with sufficient resources—CPU, RAM, etc.(as program 24 determines by query of configuation files of this othercomputer and comparison to resource data previously entered by theadministrator in table 203 indicating resource requirements of thesoftware) to effectively execute the software, without additional chargeor with substantially less charge than another, new license of the sametype.

If the company's situation permits the resolution considered in step212, then program 24 notifies the administrator of this recommendedresolution (decision 214, yes branch), and that the cost is low, i.e.the labor cost of relocating the software from the computer of theunlicensed installation to another computer of the company (step 230).There is no additional license fee.

If the software installation cannot be moved to another computer andlicensed under an existing, underutilized license at this other computerbased on the rules of step 212 (decision 214, no branch), program 24determines if an attempt should be made to renegotiate an existinglicense of the company for this software to expand it to license thecurrently unlicensed software installation (step 216), based on thefollowing rules:

(d) The administrator on behalf of the company has previously recordedin table 203 an intent of the company to retain and invest in this typeof software. Also, there is an existing license for another installationof this software on another computer or an existing license intended forthe current installation (which is inadequate in some respect, such as alimit on processor power or geographic location, for the currentinstallation) which will expire in less than a predetermined timeperiod, such as nine months. In such a case, program 24 will estimate acost for an expanded license to cover the currently unlicensedinstallation. Program 24 estimates the cost for licensing the unlicensedsoftware installation based on a fixed, predetermined percentage (suchas 25%) of the total license fee for the existing license plus the totallicense fee for the existing license divided by the number of copieslicensed under the existing license.

If the company's situation permits the resolution considered in step216, then program 24 notifies the administrator of this recommendedresolution (decision 218, yes branch), and the estimated cost as notedabove (step 230).

If an existing software license should not be renegotiated and expandedto license the currently unlicensed software installation based on therule of step 216 (decision 218, no branch), program 24 determines ifanother, new license should be purchased for the currently unlicensedinstallation (step 220), based on the following rules:

(e) The administrator previously recorded in table 203 that it iscritical to the company to keep the currently unlicensed softwareinstallation on the same computer. In such a case, program 24 willestimate a cost for the new license for the currently unlicensedsoftware installation. Program 24 estimates this cost for the newlicense as the same cost for any comparable existing license (based ondata in table 103). If there is no such comparable existing license,program 24 program 24 will estimate the cost for the new license tolicense the unlicensed software installation based on a fixed,predetermined percentage (such as 25%) of the total license fee for theexisting license plus the total license fee for the existing licensedivided by the number of copies licensed under the existing license.After step 220, program 24 notifies the administrator of thisrecommended resolution (step 230), and the estimated cost as notedabove.

It should be noted that the order of the steps 204, 208, 212, 216 and220 is generally the order of lower cost to higher cost to the companyof the resolution, i.e. to maximize the license cost reductions orminimize the additional license cost, as the case may be. In otherwords, complete removal of the software from all the computers of thecompany following step 204 will lower the cost to the company (if theexisting licenses have ongoing charges). The removal of a singlesoftware installation following step 208 may also lower the cost to thecompany (if there is a license intended for the software installation,but is inadequate) but not as much as complete removal of the softwarefrom all the computers of the company. In other cases, the removal ofthe single software installation following step 208 will be neutral asfar as cost. The relocation of the software from the currentlyunlicensed installation to another, licensed computer following step 212will be neutral as far as cost to the company (except for the laborinvolved). The renegotiation/expansion of an existing license followingstep 216 will likely entail some additional cost to the company. Thepurchase of a new license following step 220 will likely entail greatercost than renegotiation/expansion of an existing license in step 216.So, the earlier in the sequence of steps 204, 208, 212, 216 and 220 thatprogram 24 determines the respective resolution to be viable based onthe rules in database 201, the more economical the recommendation byprogram 24 to the company.

If program 24 reaches a recommendation in steps 204, 208, 212, 216 or220 to (a) decommission/delete the software from all computers of thecompany, (b) decommission/delete another installation of this softwareon another computer of the company so that an existing license hassufficient scope to license the currently unlicensed softwareinstallation, (c) move the currently unlicensed software to anothercomputer where it will be properly licensed under an existing license ofthe company, (d) renegotiate an existing license of the company toextend the existing license to the currently unlicensed softwareinstallation, or (e) purchase a new license to cover the currentlyunlicensed software installation, then program 24 notifies theadministrator in step 230 as explained above. In the illustratedembodiment of program 24, when program 24 first determines satisfactionof one of the foregoing recommendations listed above in step 204, 208,212, 216 or 220 in that order, program 24 notifies the administrator ofthe recommendation (and cost) in step 230, and does not consider theother possible resolutions which appear downstream/later in theflowchart of FIG. 2. However, in another embodiment of program 24,program 24 considers all the possible resolutions of steps 204, 208,212, 216 and 220 (and their respective costs) in the case of allinstallations of software being licensed properly, and notifies theadministrator in step 230 which possible resolutions comply with therules in rules database 201 and their cost. This allows theadministrator to choose amongst all possible acceptable resolutions.

Programs 22 and 24 can be loaded into computer 10 from a computerstorage medium such as magnetic disk or tape, optical CD ROM, DVD or thelike onto RAM or hard drive, or downloaded from network media via theInternet and TCP/IP adapter card 20. Both the computer storage mediumand network media are considered “computer storage media”.

Based on the foregoing, a system, method and program product fordetermining what to do when an unlicensed software installation isidentified, have been disclosed. However, numerous modifications andsubstitutions can be made without deviating from the scope of thepresent invention. For example, in the case of all installations of asoftware type being properly licensed, program 24 can determine if thereare any opportunities to reduce the scope of the current licenses and,thereby, gain savings in future licensing costs. Therefore, the presentinvention has been disclosed by way of illustration and not limitation,and reference should be made to the following claims to determine thescope of the present invention.

1. A computer implemented method for determining a recommended course ofaction to resolve an unlicensed software installation of a type ofsoftware in a computer of a company, said method comprising the stepsof: determining an amount or level of use of said type of software bythe company during a predetermined period of time; determining if saidtype of software is currently installed on another computer of saidcompany; and determining if the software of said unlicensed softwareinstallation can be relocated to said other computer of said company andencompassed under another existing license for said other computer.
 2. Amethod as set forth in claim 1 further comprising the step ofdetermining whether the company has previously indicated an interest indiscontinuing use of said type of software.
 3. A method as set forth inclaim 1 further comprising the step of determining whether the companyhas previously indicated an interest in retaining said type of software,and in response, recommending renegotiation of an existing license orpurchase of a new license to cover the unlicensed software installation.4. A method as set forth in claim 1 further comprising the step ofdetermining an amount or degree of problems with said type of softwareduring a previous time period, and if said amount or degree exceeds apredetermined level, recommending decommissioning said softwareinstallation.
 5. A method as set forth in claim 1 further comprising thestep of estimating a cost for expanding an existing license to encompasssaid currently unlicensed software installation.
 6. A method as setforth in claim 1 wherein the step of determining an amount or level ofuse of said type of software by the company during a predeterminedperiod of time comprises the steps of: determining if said company hasused said type of software in said computer or other computer(s) of thecompany in a previous predetermined period of time; and determining ifsaid company has substantially underutilized said type of softwareduring a previous predetermined period of time.
 7. A method as set forthin claim 6 further comprising the step of determining whether saidcompany has other, functionally similar software currently installed ona computer of the company.
 8. A method as set forth in claim 1 wherein:the step of determining if said type of software is currently installedon another computer of said company, is performed after the step ofdetermining an amount or level of use of said type of software by thecompany during a predetermined period of time; and the step ofdetermining if the software of said unlicensed software installation canbe relocated to another computer of said company and encompassed underanother existing license for said other computer, is performed after thestep of determining if said type of software is currently installed onanother computer of said company.
 9. A method as set forth in claim 1wherein in response to the step of determining that an amount or levelof use of said type of software by the company during a predeterminedperiod of time is below a predetermined threshold, recommendingdecommissioning of said software installation.
 10. A method as set forthin claim 1 wherein in response to the step of determining that said typeof software is currently installed on another computer of said company,recommending decommissioning of said software installation.
 11. A methodas set forth in claim 1 wherein in response to the step of determiningthat the software of said unlicensed software installation can berelocated to another computer of said company and encompassed underanother existing license for said other computer, recommendingrelocation of said software of said unlicensed software installation tosaid other computer and decommissioning said currently unlicensedsoftware installation.
 12. A method as set forth in claim 1 furthercomprising the step of determining if said other computer can add aworkload of said unlicensed software installation.
 13. A computerimplemented method for determining a recommended course of action toresolve an unlicensed software installation of a type of software in acomputer of a company, said method comprising the steps of:automatically evaluating characteristics of said company's use of saidtype of software which would permit removal of said type of softwarefrom all computers of said company; automatically evaluatingcharacteristics of said company's use of said software installationwhich would permit removal of said software installation; andautomatically evaluating characteristics of said company's use of saidtype of software which would permit relocation of said software fromsaid unlicensed software installation to another computer of saidcompany at which said software would be licensed.
 14. A method as setforth in claim 13 further comprising the steps of: automaticallyevaluating characteristics of said company's use of said type ofsoftware and existing license(s) of said company to determine whetherone of such existing licenses could be extended through negotiation tocover said currenty unlicensed software installation with less cost thanacquiring a new, separate license for said currently unlicensed softwareinstallation.
 15. A method as set forth in claim 13 wherein: the step ofautomatically evaluating characteristics of said company's use of saidsoftware installation which would permit removal of said softwareinstallation, is performed after the step of automatically evaluatingcharacteristics of said company's use of said type of software whichwould permit removal of said software from all computers of saidcompany; and the step of automatically evaluating characteristics ofsaid company's use of said type of software which would permitrelocation of said software from said unlicensed software installationto another computer of said company at which said software would belicensed, is performed after the step of automatically evaluatingcharacteristics of said company's use of said software installationwhich would permit removal of said software installation.
 16. A methodas set forth in claim 13 wherein at least one of said automaticevaluating steps includes the step of determining an amount or level ofuse of said type of software by the company during a predeterminedperiod of time.
 17. A computer program product for determining arecommended course of action to resolve an unlicensed softwareinstallation of a type of software in a computer of a company, saidcomputer program product comprising: a computer readable medium; firstprogram instructions to automatically evaluate characteristics of saidcompany's use of said type of software which would permit removal ofsaid type of software from all computers of said company; second programinstructions to automatically evaluate characteristics of said company'suse of said software installation which would permit removal of saidsoftware installation; and third program instructions to automaticallyevaluate characteristics of said company's use of said type of softwarewhich would permit relocation of said software from said unlicensedsoftware installation to another computer of said company at which saidsoftware would be licensed; and wherein said first, second and thirdprogram instructions are stored on said medium.
 18. A computer programproduct as set forth in claim 17 further comprising: fourth programinstructions to automatically evaluate characteristics of said company'suse of said type of software and existing license(s) of said company todetermine whether one of such existing licenses could be extendedthrough negotiation to cover said currenty unlicensed softwareinstallation with less cost than acquiring a new, separate license forsaid currently unlicensed software installation; and wherein said fourthprogram instructions are stored on said medium.
 19. A computer programproduct as set forth in claim 17 wherein: said third programinstructions are executed after said second program instructions, andsaid second program instructions are executed after said first programinstructions.
 20. A computer program product as set forth in claim 17wherein at least one of said first, second or third program instructionsdetermines an amount or level of use of said type of software by thecompany during a predetermined period of time.